#ifndef CSPLITTER_H
#define CSPLITTER_H

#include <QWidget>
#include <QSplitter>

class CSplitter : public QWidget
{
    Q_OBJECT
public:
    explicit CSplitter(QWidget *parent = 0);

    //第一种实现  这种实现在拆分的时候 可以1:1拆分
    void addWidget(QWidget *dst,QWidget *src,Qt::Orientation orientation);
    void removeWidget(QWidget *src);

    //第二种实现 减少Splitter的用量 降低内存开销  但是默认拆分不是1:1  各种设置试了但没成功
    void addWidget2(QWidget *dst,QWidget *src,Qt::Orientation orientation);
    void removeWidget2(QWidget *src);

    //第三种实现 最少的QSplitter使用 但是默认拆分不是1:1  各种设置试了但没成功
    void addWidget3(QWidget *dst,QWidget *src,Qt::Orientation orientation);
    void removeWidget3(QWidget *src, bool clearEmptySplitter = false);
    void recursiveInstallEventFilter(QObject *pObject);
};

#endif // CSPLITTER_H
